package com.study.main.dao;

import com.study.common.BaseDao.BaseDao;
import com.study.common.entity.User;
import com.study.main.entity.Information;
import com.study.main.vo.UserInfo;

import java.util.List;
import java.util.Map;

/**
 * @Create by ldr.
 * @create 2018-08-30 14:29
 * @Description：
 */

public interface MainDao extends BaseDao {

    /**
     * description: 批量删除
     * @params id的集合
     */
    void deleteByIds(int[] ids);

    /**
     * description:
     * @params 页码，分页大小,hql,Map装的是实体对应的属性和属性对应的值
     * @return 
     */
    List<UserInfo> findPageByQuery(int pageNo,int pageSize,Map<String,Object> map);

    /**
     * description: 获取记录总条数
     * @return 记录总条数
     */
    Long getRows(Map<String,Object> map);

    /**
     * description: 修改权限
     * @params 身份id 用户id
     * @return
     */
    void updateIdentity(int identityId,int userId);
    /**
     *  查询数据
     * @param userId  根据id查询
     * @return java.util.List<com.study.main.entity.Information>
     *
     */
    List<Information> findByUserId( int userId);
    /**
     *  查询对应的数据
     * @param infoId 信息编号
     * @return com.study.main.vo.UserInfo
     *
     */
    UserInfo findByInfoId(int infoId);
    /**
     *  修改 user 表中对应的字段
     * @param user
     * @return void
     *
     */
    void updateUser(User user);
    /**
     *  修改 information 表中对应的字段
     * @param information
     * @return void
     *
     */
    void updateInformation(Information information);

    List<User> findPageBy(Map<String,Object> map);
}
